package pe.gob.sunarp.entidad;

import java.io.Serializable;
import javax.persistence.*;


/**
 * The persistent class for the AUD_BUSQ_REG_PREDIOS database table.
 * 
 */
@Entity
@Table(name="AUD_BUSQ_REG_PREDIOS")
public class AudBusqRegPredio implements Serializable {
	private static final long serialVersionUID = 1L;
	private long audBusqRegPrediosId;
	private String nombreVia;
	private String nombreZona;
	private String numInmb;
	private String numInterior;
	private TmDistrito tmDistrito;
	private TipoInterior tipoInterior;
	private TipoNumeracion tipoNumeracion;
	private TipoVia tipoViaBean;
	private TipoZona tipoZonaBean;
	private AudBusqPartida audBusqPartida;

    public AudBusqRegPredio() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="AUD_BUSQ_REG_PREDIOS_ID", unique=true, nullable=false, precision=10)
	public long getAudBusqRegPrediosId() {
		return this.audBusqRegPrediosId;
	}

	public void setAudBusqRegPrediosId(long audBusqRegPrediosId) {
		this.audBusqRegPrediosId = audBusqRegPrediosId;
	}


	@Column(name="NOMBRE_VIA", nullable=false, length=100)
	public String getNombreVia() {
		return this.nombreVia;
	}

	public void setNombreVia(String nombreVia) {
		this.nombreVia = nombreVia;
	}


	@Column(name="NOMBRE_ZONA", nullable=false, length=100)
	public String getNombreZona() {
		return this.nombreZona;
	}

	public void setNombreZona(String nombreZona) {
		this.nombreZona = nombreZona;
	}


	@Column(name="NUM_INMB", length=10)
	public String getNumInmb() {
		return this.numInmb;
	}

	public void setNumInmb(String numInmb) {
		this.numInmb = numInmb;
	}


	@Column(name="NUM_INTERIOR", length=10)
	public String getNumInterior() {
		return this.numInterior;
	}

	public void setNumInterior(String numInterior) {
		this.numInterior = numInterior;
	}


	//bi-directional many-to-one association to TmDistrito
    @ManyToOne
	@JoinColumns({
		@JoinColumn(name="DIST_ID", referencedColumnName="DIST_ID", nullable=false),
		@JoinColumn(name="DPTO_ID", referencedColumnName="DPTO_ID", nullable=false),
		@JoinColumn(name="PAIS_ID", referencedColumnName="PAIS_ID", nullable=false),
		@JoinColumn(name="PROV_ID", referencedColumnName="PROV_ID", nullable=false)
		})
	public TmDistrito getTmDistrito() {
		return this.tmDistrito;
	}

	public void setTmDistrito(TmDistrito tmDistrito) {
		this.tmDistrito = tmDistrito;
	}
	

	//bi-directional many-to-one association to TipoInterior
    @ManyToOne
	@JoinColumn(name="TIPO_INTER")
	public TipoInterior getTipoInterior() {
		return this.tipoInterior;
	}

	public void setTipoInterior(TipoInterior tipoInterior) {
		this.tipoInterior = tipoInterior;
	}
	

	//bi-directional many-to-one association to TipoNumeracion
    @ManyToOne
	@JoinColumn(name="TIPO_NUMER")
	public TipoNumeracion getTipoNumeracion() {
		return this.tipoNumeracion;
	}

	public void setTipoNumeracion(TipoNumeracion tipoNumeracion) {
		this.tipoNumeracion = tipoNumeracion;
	}
	

	//bi-directional many-to-one association to TipoVia
    @ManyToOne
	@JoinColumn(name="TIPO_VIA", nullable=false)
	public TipoVia getTipoViaBean() {
		return this.tipoViaBean;
	}

	public void setTipoViaBean(TipoVia tipoViaBean) {
		this.tipoViaBean = tipoViaBean;
	}
	

	//bi-directional many-to-one association to TipoZona
    @ManyToOne
	@JoinColumn(name="TIPO_ZONA", nullable=false)
	public TipoZona getTipoZonaBean() {
		return this.tipoZonaBean;
	}

	public void setTipoZonaBean(TipoZona tipoZonaBean) {
		this.tipoZonaBean = tipoZonaBean;
	}
	

	//bi-directional many-to-one association to AudBusqPartida
    @ManyToOne
	@JoinColumn(name="AUD_BUSQ_PARTIDA_ID", nullable=false)
	public AudBusqPartida getAudBusqPartida() {
		return this.audBusqPartida;
	}

	public void setAudBusqPartida(AudBusqPartida audBusqPartida) {
		this.audBusqPartida = audBusqPartida;
	}
	
}